package com.example.hello.service;

import com.example.hello.dto.AttractionDTO;
import com.example.hello.entity.Attraction;
import com.github.pagehelper.PageInfo;

public interface AttractionService {
    /**
     * 添加景点信息
     * @param attractionDTO 景点数据
     * @param userId 当前用户ID
     * @return 添加结果
     */
    boolean addAttraction(AttractionDTO attractionDTO, Long userId);
    
    /**
     * 更新景点信息
     * @param attractionDTO 景点数据
     * @return 更新结果
     */
    boolean updateAttraction(AttractionDTO attractionDTO);
    
    /**
     * 删除景点信息
     * @param attractionId 景点ID
     * @return 删除结果
     */
    boolean deleteAttraction(Long attractionId);
    
    /**
     * 获取景点详情
     * @param attractionId 景点ID
     * @return 景点信息
     */
    Attraction getAttractionById(Long attractionId);
    
    /**
     * 分页获取景点列表
     * @param attraction 查询条件
     * @param pageNum 页码
     * @param pageSize 每页大小
     * @return 分页数据
     */
    PageInfo<Attraction> getAttractionList(Attraction attraction, Integer pageNum, Integer pageSize);
    
    /**
     * 增加景点访问量
     * @param attractionId 景点ID
     * @return 操作结果
     */
    boolean incrementViewCount(Long attractionId);
} 